Page({
  data: {
    newPhone: '',       // 新手机号
    smsCode: '',        // 验证码
    countdown: 0,       // 倒计时
    isFormValid: false, // 表单是否有效
    timer: null         // 定时器
  },

  // 手机号输入处理
  handlePhoneInput(e) {
    const value = e.detail.value;
    this.setData({
      newPhone: value
    }, this.checkFormValidity);
  },

  // 验证码输入处理
  handleCodeInput(e) {
    const value = e.detail.value;
    this.setData({
      smsCode: value
    }, this.checkFormValidity);
  },

  // 检查表单是否有效
  checkFormValidity() {
    const isValid = this.isValidPhone(this.data.newPhone) && 
                   this.data.smsCode.length === 6;
    this.setData({
      isFormValid: isValid
    });
  },

  // 验证手机号格式
  isValidPhone(phone) {
    return /^1[3-9]\d{9}$/.test(phone);
  },

   // 发送验证码（完整实现）
   sendSmsCode() {
    console.log("点击事件触发");
    // 如果正在倒计时，直接返回
    if (this.data.countdown > 0) return;
    
    const phone = this.data.newPhone;
    
    // 验证手机号格式
    if (!this.isValidPhone(phone)) {
      wx.showToast({
        title: '请输入正确的11位手机号',
        icon: 'none'
      });
      return;
    }

    // 显示加载状态
    wx.showLoading({
      title: '发送中...',
      mask: true
    });

    // 实际项目中替换为真实的API请求
    // 这里使用setTimeout模拟网络请求
    setTimeout(() => {
      wx.hideLoading();
      
      // 请求成功后开始倒计时
      this.startCountdown();
      
      wx.showToast({
        title: '验证码已发送',
        icon: 'success'
      });
    }, 1000);
  },


 // 开始倒计时（完整实现）
 startCountdown() {
  // 设置初始倒计时时间（60秒）
  this.setData({ countdown: 60 });
  
  // 清除已有定时器（避免重复设置）
  if (this.data.timer) {
    clearInterval(this.data.timer);
    this.data.timer = null;
  }
  
  // 设置新定时器
  this.data.timer = setInterval(() => {
    // 每次减少1秒
    this.setData({ countdown: this.data.countdown - 1 }, () => {
      // 当倒计时结束时清除定时器
      if (this.data.countdown <= 0) {
        clearInterval(this.data.timer);
        this.data.timer = null;
      }
    });
  }, 1000);
},

  // 提交表单
  handleSubmit() {
    if (!this.data.isFormValid) return;
    
    const { newPhone, smsCode } = this.data;
     // 验证验证码是否正确（这里应该调用API验证）
     wx.showLoading({ title: '提交中...' });
     setTimeout(() => {
       wx.hideLoading();
       // 模拟API验证成功
       wx.showToast({
         title: '手机号更换成功',
         icon: 'success',
         duration: 2000,
         success: () => {
           // 返回上一页或跳转到其他页面
           wx.navigateBack();
         }
       });
     }, 1500);
   },
 
   // 页面卸载时清除定时器
   onUnload() {
     if (this.data.timer) {
       clearInterval(this.data.timer);
     }
   }
 });